
package CCT220_Aula10_Exercício03_13106;

/**
 * Project CCT220:CCT220_Aula10_Exercício03_13106
 * 
 * @author marcel
 * @author 13106
 * 
 * 
 *         20/09/2011
 */
public abstract class Cliente {
	private String nome;
	private String endereco;
	private String telefone;


	/**
	 * Construtor
	 * 
	 * @param nome
	 * @param endereco
	 * @param telefone
	 */
	public Cliente(String nome, String endereco, String telefone) {

		super();
		this.nome = nome;
		this.endereco = endereco;
		this.telefone = telefone;
	}


	/**
	 * Metodo que retorna o valor de nome
	 * 
	 * @return the nome
	 */
	public String getNome() {

		return nome;
	}


	/**
	 * Metodo que retorna o valor de endereco
	 * 
	 * @return the endereco
	 */
	public String getEndereco() {

		return endereco;
	}


	/**
	 * Metodo que retorna o valor de telefone
	 * 
	 * @return the telefone
	 */
	public String getTelefone() {

		return telefone;
	}


	/**
	 * Metodo que altera o valor de nome para nome
	 * 
	 * @param nome
	 *            the nome to set
	 */
	public void setNome(String nome) {

		this.nome = nome;
	}


	/**
	 * Metodo que altera o valor de endereco para
	 * endereco
	 * 
	 * @param endereco
	 *            the endereco to set
	 */
	public void setEndereco(String endereco) {

		this.endereco = endereco;
	}


	/**
	 * Metodo que altera o valor de telefone para
	 * telefone
	 * 
	 * @param telefone
	 *            the telefone to set
	 */
	public void setTelefone(String telefone) {

		this.telefone = telefone;
	}


	/**
	 * Metodo abstrato que forca as classes filhas
	 * a implementarem este metodo para imprimir
	 * os dados do objeto
	 * 
	 * @return a String
	 * */
	public abstract String imprimirDados();

}
